// 引入 Axios 实例
import { ref } from 'vue';
import { http } from 'utility/http'; // 确保这个路径是正确的，指向您 Axios 实例的文件

// 登录函数
async function login(username, password) {
  try {
    // 使用 Axios 实例发送 POST 请求到登录接口
    const response = await http.post('/user/login', {
      username,
      password,
    });

    // 假设服务器返回一个包含 token 的对象，您可以根据实际情况处理
    if (response.status === 200 && response.data.token) {
      // 保存 token 到本地存储或其他安全位置
      localStorage.setItem('token', response.data.token);
      
      // 根据您的应用逻辑，可能还需要其他处理，比如跳转页面等
      console.log('登录成功！');
      return response.data; // 返回响应数据，以便在调用处使用
    } else {
      throw new Error('登录失败，服务器返回异常');
    }
  } catch (error) {
    // 处理请求过程中可能出现的错误，比如网络错误、服务器错误等
    console.error('登录请求失败:', error);
    throw error; // 重新抛出错误，以便调用者可以进一步处理
  }
}

// 示例：调用 login 函数
(async () => {
  try {
    await login('yourUsername', 'yourPassword');
    // 登录成功后的逻辑
  } catch (e) {
    // 登录失败的逻辑
  }
})();